﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using Gurucore.Framework.Core.Configuration;
using Gurucore.Framework.Core.XmlBinding;

namespace Gurucore.DTOGenerator
{
	[XmlClass("dto_generator")]
	public class DTOGeneratorConfiguration : ConfigurationBase
	{
		private string m_sGeneratedNamespace;

		[XmlProperty(Type = XmlPropertyType.NestedElement)]
		public string GeneratedNamespace
		{
			get { return m_sGeneratedNamespace; }
			set { m_sGeneratedNamespace = value; }
		}

		private string m_sSaveTo;

		[XmlProperty(Type = XmlPropertyType.NestedElement)]
		public string SaveTo
		{
			get { return m_sSaveTo; }
			set { m_sSaveTo = value; }
		}

		Dictionary<string, TypeMappingSet> m_dicTypeMapping;

		[XmlSubSequence(HashKey = "provider")]
		public Dictionary<string, TypeMappingSet> TypeMapping
		{
			get { return m_dicTypeMapping; }
			set { m_dicTypeMapping = value; }
		}
	}
}
